/**
 * 顺序递增分组 AscendingGroups
 */
export const EIGHT_ASCENDING_GROUPS = [
  [1, 2, 3, 4, 5, 6, 7, 8], // 8个号码
  [9, 10, 11, 12, 13, 14, 15, 16], // 8个号码
  [17, 18, 19, 20, 21, 22, 23, 24], // 8个号码
  [25, 26, 27, 28, 29, 30, 31, 32], // 8个号码
  [33, 34, 35, 36, 37, 38, 39, 40], // 8个号码
  [41, 42, 43, 44, 45, 46, 47, 48, 49] // 9个号码
]

/**
 * 奇偶分组 OddEvenGroups
 */
export const EIGHT_ODD_EVEN_GROUPS = [
  [1, 3, 5, 7, 9, 11, 13, 15], // 8个奇数
  [2, 4, 6, 8, 10, 12, 14, 16], // 8个偶数
  [17, 19, 21, 23, 25, 27, 29, 31], // 8个奇数
  [18, 20, 22, 24, 26, 28, 30, 32], // 8个偶数
  [33, 35, 37, 39, 41, 43, 45, 47], // 8个奇数
  [34, 36, 38, 40, 42, 44, 46, 48, 49] // 9个号码（剩余偶数+1奇数）
]

/**
 * 质数分组 PrimeGroups
 * 质数和合数分组 PrimeCompositeGroups
 */
export const EIGHT_PRIME_GROUPS = [
  [2, 3, 5, 7, 11, 13, 17, 19], // 8个质数
  [1, 23, 29, 31, 37, 41, 43, 47], // 8个质数+1
  [4, 6, 8, 9, 10, 12, 14, 15], // 8个非质数
  [16, 18, 20, 21, 22, 24, 25, 26], // 8个非质数
  [27, 28, 30, 32, 33, 34, 35, 36], // 8个非质数
  [38, 39, 40, 42, 44, 45, 46, 48, 49] // 9个非质数（剩余）
]

/**
 * 尾数分组 MantissaGroups
 */
export const EIGHT_MANTISSA_GROUPS = [
  [1, 2, 11, 12, 21, 22, 31, 41], // 8个号码（尾数1-2）
  [3, 4, 13, 14, 23, 24, 33, 43], // 8个号码（尾数3-4）
  [5, 6, 15, 16, 25, 26, 35, 45], // 8个号码（尾数5-6）
  [7, 8, 17, 18, 27, 28, 37, 47], // 8个号码（尾数7-8）
  [9, 10, 19, 20, 29, 30, 39, 49], // 8个号码（尾数9-0）
  [32, 34, 36, 38, 40, 42, 44, 46, 48] // 9个号码（剩余）
]

/**
 * 金字塔分组 PyramidGroups
 */
export const EIGHT_PYRAMID_GROUPS = [
  [1, 2, 22, 23, 24, 25, 26, 49], // 8个号码（从边缘向中间）
  [3, 4, 18, 19, 20, 21, 27, 48], // 8个号码（从边缘向中间）
  [5, 6, 14, 15, 16, 17, 28, 47], // 8个号码（从边缘向中间）
  [7, 8, 10, 11, 12, 13, 29, 46], // 8个号码（从边缘向中间）
  [9, 30, 31, 32, 33, 34, 44, 45], // 8个号码（从边缘向中间）
  [35, 36, 37, 38, 39, 40, 41, 42, 43] // 9个号码（剩余）
]

/**
 * 模4分组 ModuloFourGroups
 * 奇偶跳跃分组 OddEvenJumpGroups 一样
 */
export const EIGHT_MODULO_FOUR_GROUPS = [
  [1, 5, 9, 13, 17, 21, 25, 29], // 8个号码（模4=1）
  [2, 6, 10, 14, 18, 22, 26, 30], // 8个号码（模4=2）
  [3, 7, 11, 15, 19, 23, 27, 31], // 8个号码（模4=3）
  [4, 8, 12, 16, 20, 24, 28, 32], // 8个号码（模4=0）
  [33, 34, 35, 36, 37, 38, 39, 40], // 8个号码（模4循环）
  [41, 42, 43, 44, 45, 46, 47, 48, 49] // 9个号码（剩余号码）
]

/**
 * 斐波那契数分组 FibonacciGroups
 */
export const EIGHT_FIBONACCI_GROUPS = [
  [1, 2, 3, 5, 8, 13, 21, 34], // 8个号码（斐波那契数列）
  [4, 6, 7, 9, 10, 11, 12, 14], // 8个号码（非斐波那契数）
  [15, 16, 17, 18, 19, 20, 22, 23], // 8个号码（非斐波那契数）
  [24, 25, 26, 27, 28, 29, 30, 31], // 8个号码（非斐波那契数）
  [32, 33, 35, 36, 37, 38, 39, 41], // 8个号码（非斐波那契数）
  [40, 42, 43, 44, 45, 46, 47, 48, 49] // 9个号码（剩余非斐波那契数）
]

/**
 * 差值递增分组 DifferenceGroups
 */
export const EIGHT_DIFFERENCE_GROUPS = [
  [1, 2, 3, 4, 5, 7, 8, 11], // 8个号码（差值1至4）
  [6, 9, 10, 12, 13, 16, 17, 18, 24], // 8个号码（差值4至6）
  [14, 15, 19, 20, 25, 26, 32, 33], // 8个号码（差值5至8）
  [21, 22, 23, 27, 28, 29, 34, 35], // 8个号码（差值6至9）
  [30, 31, 36, 37, 38, 39, 40, 41], // 8个号码（差值7至10）
  [42, 43, 44, 45, 46, 47, 48, 49] // 9个号码（剩余号码）
]

/**
 * 四象限分组 QuadrantGroups
 */
export const EIGHT_QUADRANT_GROUPS = [
  [1, 2, 3, 4, 13, 14, 25, 37], // 8个号码（象限1）
  [5, 6, 7, 8, 15, 16, 27, 39], // 8个号码（象限2）
  [9, 10, 11, 12, 17, 18, 29, 41], // 8个号码（象限3）
  [19, 20, 21, 22, 23, 24, 26, 28, 30], // 添加26以补齐
  [31, 32, 33, 34, 35, 36, 38, 40], // 保持不变
  [42, 43, 44, 45, 46, 47, 48, 49] // 保持不变
]

/**
 * 中心扩展分组 CenterExpansionGroups
 */
export const EIGHT_CENTER_EXPANSION_GROUPS = [
  [20, 21, 22, 23, 24, 25, 26, 27], // 8个号码（中心扩展1）
  [14, 17, 18, 19, 28, 29, 30, 31], // 8个号码（中心扩展2）
  [8, 9, 10, 11, 12, 13, 32, 33], // 8个号码（中心扩展3）
  [3, 4, 5, 6, 7, 34, 35, 36], // 8个号码（中心扩展4）
  [1, 2, 37, 38, 39, 40, 41, 42], // 8个号码（中心扩展5）
  [15, 16, 43, 44, 45, 46, 47, 48, 49] // 9个号码（剩余）
]

/**
 * 跳号分组（跳3） JumpThreeGroups
 */
export const EIGHT_JUMP_THREE_GROUPS = [
  [1, 4, 7, 10, 13, 16, 19, 22], // 8个号码（跳3分组1）
  [25, 28, 31, 34, 37, 40, 43, 46], // 8个号码（跳3分组2）
  [2, 5, 8, 11, 14, 17, 20, 23], // 8个号码（跳3分组3）
  [26, 29, 32, 35, 38, 41, 44, 47], // 8个号码（跳3分组4）
  [3, 6, 9, 12, 15, 18, 21, 24], // 8个号码（跳3分组5）
  [27, 30, 33, 36, 39, 42, 45, 48, 49] // 9个号码（剩余号码）
]

/**
 * 和尾数分组 LastDigitGroups
 */
export const EIGHT_LAST_DIGIT_GROUPS = [
  [1, 2, 11, 12, 21, 22, 31, 41], // 8个号码（尾数1-2）
  [3, 4, 13, 14, 23, 24, 33, 43], // 8个号码（尾数3-4）
  [5, 6, 15, 16, 25, 26, 35, 45], // 8个号码（尾数5-6）
  [7, 8, 17, 18, 27, 28, 37, 47], // 8个号码（尾数7-8）
  [9, 10, 19, 20, 29, 30, 39, 49], // 8个号码（尾数9-0）
  [32, 34, 36, 38, 40, 42, 44, 46, 48] // 9个号码（剩余）
]

/**
 * 对角线分组 DiagonalGroups
 */
export const EIGHT_DIAGONAL_GROUPS = [
  [1, 6, 11, 16, 21, 26, 31, 36], // 8个号码（对角线1）
  [2, 7, 12, 17, 22, 27, 32, 37], // 8个号码（对角线2）
  [3, 8, 13, 18, 23, 28, 33, 38], // 8个号码（对角线3）
  [4, 9, 14, 19, 24, 29, 34, 39], // 8个号码（对角线4）
  [5, 10, 15, 20, 25, 30, 35, 40], // 8个号码（对角线5）
  [41, 42, 43, 44, 45, 46, 47, 48, 49] // 9个号码（剩余）
]

/**
 * 镜像跳号分组 MirrorGroups
 */
export const EIGHT_MIRROR_GROUPS = [
  [1, 2, 3, 4, 46, 47, 48, 49], // 8个号码（镜像跳号1）
  [5, 6, 7, 8, 42, 43, 44, 45], // 8个号码（镜像跳号2）
  [9, 10, 11, 12, 38, 39, 40, 41], // 8个号码（镜像跳号3）
  [13, 14, 15, 16, 34, 35, 36, 37], // 8个号码（镜像跳号4）
  [17, 18, 19, 20, 30, 31, 32, 33], // 8个号码（镜像跳号5）
  [21, 22, 23, 24, 25, 26, 27, 28, 29] // 9个号码（剩余镜像）
]

/**
 * 倍数和余数分组 MultipleGroups
 */
export const EIGHT_MULTIPLE_GROUPS = [
  [3, 6, 9, 12, 18, 21, 24, 49], // 替换15为49
  [5, 10, 15, 20, 25, 30, 35, 40], // 保持不变
  [1, 4, 7, 8, 11, 13, 14, 16], // 保持不变
  [17, 19, 22, 23, 26, 28, 29, 32], // 保持不变
  [33, 34, 37, 38, 41, 43, 44, 47], // 保持不变
  [2, 27, 31, 36, 39, 42, 45, 46, 48] // 保持不变
]

/**
 * 中心对称分组 SymmetricCenterGroups
 */
export const EIGHT_SYMMETRIC_CENTER_GROUPS = [
  [1, 2, 3, 4, 5, 6, 45, 46], // 8个号码（从边缘向中心）
  [7, 8, 9, 10, 11, 12, 43, 44], // 8个号码（从边缘向中心）
  [13, 14, 15, 16, 17, 18, 41, 42], // 8个号码（从边缘向中心）
  [19, 20, 21, 22, 23, 24, 39, 40], // 8个号码（从边缘向中心）
  [25, 26, 27, 28, 29, 30, 37, 38], // 8个号码（从边缘向中心）
  [31, 32, 33, 34, 35, 36, 47, 48, 49] // 9个号码（中心和剩余）
]
export const EIGHT_GROUP_MAP = {
  EIGHT_ASCENDING_GROUPS,
  EIGHT_ODD_EVEN_GROUPS,
  EIGHT_PRIME_GROUPS,
  EIGHT_MANTISSA_GROUPS,
  EIGHT_PYRAMID_GROUPS,
  EIGHT_MODULO_FOUR_GROUPS,
  EIGHT_FIBONACCI_GROUPS,
  EIGHT_DIFFERENCE_GROUPS,
  EIGHT_QUADRANT_GROUPS,
  EIGHT_CENTER_EXPANSION_GROUPS,
  EIGHT_JUMP_THREE_GROUPS,
  EIGHT_LAST_DIGIT_GROUPS,
  EIGHT_DIAGONAL_GROUPS,
  EIGHT_MIRROR_GROUPS,
  EIGHT_MULTIPLE_GROUPS,
  EIGHT_SYMMETRIC_CENTER_GROUPS
}

